package com.nuorui.module.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.nuorui.common.core.domain.ResponseDTO;
import com.nuorui.module.system.domain.entity.RoleMenuEntity;
import com.nuorui.module.system.domain.form.RoleMenuForm;
import com.nuorui.module.system.domain.vo.MenuVO;
import com.nuorui.module.system.domain.vo.RoleMenuTreeVO;

import java.util.List;

/**
 * 用户船舶表
 * 
 * @author 
 * @date 2021-12-15 16:42:43
 */
public interface RoleMenuService extends IService<RoleMenuEntity> {


    /**
     * 获取角色的菜单权限树
     *
     * @param roleId
     * @return
     */
    ResponseDTO<RoleMenuTreeVO> getMenuTreeByRoleId(Long roleId);

    /**
     * 获取角色菜单列表
     *
     * @param roleIdList
     * @param isAdministrator
     * @return
     */
    List<MenuVO> getMenusByRoleIdList(List<Long> roleIdList, boolean isAdministrator);

    /**
     * 更新角色的菜单权限
     *
     * @param roleId
     * @param roleMenuForm
     * @return
     */
    ResponseDTO updateRoleMenu(Long roleId, RoleMenuForm roleMenuForm);
}
